export default {
  // vue会帮我们把mixin中的代码一份一份的复制到项目中所有vue组件内
  methods: {
    // 这个函数返回一个布尔值，当值为true表示具有该标识符对应按钮的操作权限
    // 否则没有
    checkPermBtn(code) {
      // 判断：只需要判断points数组中是否存在按钮标识符即可，如果存在
      // 则说明该按钮标识符对应的按钮 用户用权限进行操作，如果不存在说明
      // 该标识符对应的按钮没有 权限操作。
      const roles = this.$store.state.user.userInfo.roles.roles
      // console.log(138, points)
      // code 按钮标识符
      // 注意：这里为什么要做短路运算呢？
      // 答：因为当我们在这个页面退出登录的时候，userInfo数据会被清空，数据发生变化会触发页面渲染，
      // 页面渲染就触发到checkPermBtn函数，那么触发这个函数，如果我们直接读取userInfo.roles.points则会直接报错
      // 因为userInfo是空对象，所以userInfo.roles是undefined， 最后userInfo.roles.points就报错了
      return roles && roles.points.includes(code)
    }
  }
}
